#!/bin/bash

# Git快速提交脚本
# 用法: ./git.sh "提交信息" 或 ./git.sh (会提示输入提交信息)

echo "🚀 Git快速提交脚本"
echo "=================="

# 检查是否有参数，如果没有则提示输入提交信息
if [ $# -eq 0 ]; then
    echo "请输入提交信息:"
    read -r commit_message
else
    commit_message="$1"
fi

# 检查提交信息是否为空
if [ -z "$commit_message" ]; then
    echo "❌ 错误: 提交信息不能为空"
    exit 1
fi

echo "📝 提交信息: $commit_message"

# 检查Git状态
echo "🔍 检查Git状态..."
if ! git status &> /dev/null; then
    echo "❌ 错误: 当前目录不是Git仓库"
    exit 1
fi

# 添加所有更改到暂存区
echo "➕ 添加所有更改到暂存区..."
git add .

# 检查是否有要提交的更改
if git diff --cached --quiet; then
    echo "ℹ️  没有需要提交的更改"
    exit 0
fi

# 提交更改
echo "💾 提交更改..."
git commit -m "$commit_message"

# 检查提交是否成功
if [ $? -eq 0 ]; then
    echo "✅ 提交成功!"
    
    # 自动推送到远程仓库
    echo "🚀 自动推送到远程仓库..."
    git push
    if [ $? -eq 0 ]; then
        echo "✅ 推送成功!"
    else
        echo "❌ 推送失败!"
    fi
else
    echo "❌ 提交失败!"
    exit 1
fi

echo "🎉 操作完成!"